# Tasks functions to implement

# Todo!
# - add command prompt, such as...
# 	- when starting up pyTasks, we're given a basic interface
#	- ask user to input google credentials (username, password)
#		- possibility that user uses 2-step authentication!
#			- such as myself... need to have user supply authorized
#				authentication password instead of normal password
#	- different commands to access tasks
#		- most listed below as functions
#		- getTaskLists, addTask, editTask, addDueDate, etc.
# 

# Returns a list of all lists in Tasks
#
# @return: a dictionary of list name and each lists' respective tasks
def getAllLists():

# Returns the list of tasks in the argument list aList
#
# @param aList: list to lookup
# @return: a list of tasks of aList
def getList(aList):

# adds a list to Tasks
#
# @param aList: list to add (just a string)
# @return: true if list was added successfully; false otherwise
def addList(aList):

# deletes the argument list aList
#
# @param aList: list to delete
# @return: true if list was delete successfully; false otherwise
def deleteList(aList):

# adds task aTask to list aList
#
# @param aList: list to add to
# @param aTask: task to add
# @return: true of task was added successfully; false otherwise
def addTask(aList, aTask):

# deletes task aTask from list aList
#
# @param aList: list to delete from
# @param aTask: task to delete
# @return: true if task was deleted successfully; false otherwise
def deleteTask(aList, aTask):

# edits the name of a task aTask in list aList
# 
# @param aList: list to edit from
# @param aTask: task to edit name
# @return: true if task was edited successfully; false otherwise
def editTask(aList, aTask):

# moves task aTask from aList to bList
#
# @param aList: list of aTask to move from
# @param bList: list of aTask to move to
# @param aTask: task to move from aList -> bList
# @return: true if task was moved successfully; false otherwise
def moveTask(aList, bList, aTask):

# Checks if a task is checkmarked
# 
# @param aList: list of aTask to check task
# @param aTask: task to see if it is checkmarked
# @return: true if task is checkmarked; false otherwise
def isChecked(aList, aTask):

# Checkmarks a task
#
# @param aList: list of aTask to check task
# @param aTask: task to checkmark
# @return: true if task is checkmarked successfully; false otherwise
def checkMarkTask(aList, aTask):

# Adds a due date for the task aTask
#
# @param aList: list of aTask
# @param aTask: task to add date to
# @param date: date to add to task aTask
# @return: true if due date was added successfully; false otherwise
def addDueDate(aList, aTask, date):

# Changes a due date for the task aTask
#
# @param aList: list of aTask
# @param aTask: task to change date to
# @param date: date to change to task aTask
# @return: true if due date was changed successfully; false otherwise
def editDueDate(aList, aTask, date):

# Removes a due date for the task aTask
#
# @param aList: list of aTask
# @param aTask: task to remove date from
# @return: true if due date was removed successfully; false otherwise
def removeDueDate(aList, aTask):

# Adds a note for the task aTask
#
# @param aList: list of aTask
# @param aTask: task to add note to
# @param note: note to add to task aTask
# @return: true if due note was added successfully; false otherwise
def addNote(aList, aTask, note):

# Edits a note for the task aTask
# (unsure whether new note should replace old note...?
#
# @param aList: list of aTask
# @param aTask: task to edit note
# @param note: note to edit from task aTask
# @return: true if due date was edited successfully; false otherwise
def editNote(aList, aTask, note):


